The present invention relates to, in a PCI bus system, a technique for extending the PCI functions based on the information of an extended PCI configuration area, by a virtual addition of a PCI configuration area which a PCI agent device did not possess in advance.
PCI (Peripheral Component Interconnect) is a bus standard proposed mainly by the US Intel Corp.
In the PCI bus standard, devices participating to the PCI bus data transfer are called xe2x80x9cPCI agent devicexe2x80x9d.
On the other hand, PCI functions are realized by storing in advance the PCI function information, in a PCI configuration area possessed by a PCI agent device, as described in xe2x80x9cPCI Bus Power Management Interface Specification Version 1.0xe2x80x9d PCI Special Interest Group.
Now, in the conventional PCI bus system, when extending the configuration area of an existing PCI agent device, and extending the function using the configuration area, the design of that PCI agent device has been modified, or a configuration area to be extended, or a new device comprising a function using the configuration area to be extended has been arranged in a previous stage of the PCI agent device.
One of such methods is PCI-to-PCI bridge proposed by xe2x80x9cPCI to PCI Bridge Architecture Specificationxe2x80x9d (PCI Special Interest Group).
As will later be described more in detail, this proposition describes a guideline concerning the control method of the bridge circuit for relaying a first PCI bus (primary bus) and a second PCI bus (secondary bus) in the composition of a plurality of PCI buses.
However, this proposition has the following problems.
First, the circuit scale of PCI-to-PCI bridge circuit is too large. Moreover, this large circuit scale increases the designing load and the price of the device to be manufactured.
Second, the control of functions to be extended is delicate.
It is therefore an object of the present invention to resolve these problems and to provide a technique for extending the PCI functions based on the information of an extended PCI configuration area, by a virtual addition of a PCI configuration area which a PCI agent device did not possess in advance, by operating the bus transaction from the PCI host bridge to the PCI agent device.
Other objects of the present invention will become clear as the description proceeds.
To achieve the object mentioned above, the PCI function extension control device in a PCI bus system according to the present invention comprises: a PCI function extension control circuit to be connected to a first PCI bus; a new second PCI bus possessed by the PCI function extension control circuit; a bus switch to be connected between the first PCI bus and a second PCI bus; and means for disconnecting or connecting the first PCI bus and the second PCI bus upon the reception of an open and close control signal from the PCI function extension control circuit, the bus switch being connected to the PCI function extension control circuit; and is characterized by that the PCI function extension control circuit includes means to monitor the transaction of the first PCI bus and the second PCI bus, to make the bus switch emit an open and close control signal when it concerns an access to a desired configuration area, and to deliver a desired PCI control signal to the first PCI bus, or the second PCI bus.
The PCI function extension control circuit is characterized by that it comprises means to monitor the transaction of the first PCI bus and the second PCI bus, to make the bus switch emit an open and close control signal when it concerns an access to a desired configuration area in a PCI agent device to be connected to the second PCI bus, and to deliver a desired PCI control signal to the first PCI bus, or the second PCI bus.
The PCI function extension control circuit is characterized by that it comprises means to monitor the transaction of the first PCI bus and the second PCI bus, to make the bus switch emit an open and close control signal when it concerns an access to a desired configuration area in a PCI agent device to be connected to the second PCI bus, and to deliver a desired PCI control signal to the first PCI bus, or the second PCI bus; and means to make an extension circuit to be connected to the PCI agent device deliver a control signal.
Here, an extension circuit means a device to be connected to the PCI agent device. For instance, if the PCI agent device is a SCSI (Small Computer System Interface) board, it concerns a hard disk and a scanner to be connected to them.
The PCI function extension control device is characterized by that it further comprises a bus buffer to be connected to the first PCI bus; the PCI function extension control circuit is connected to the first PCI bus via the bus buffer; and the bus switch is connected to the first PCI bus via the bus buffer.
These means allow to extend the PCI function based on the information of the extended PCI configuration area.
The present inventions for achieving the object mentioned above concerns also a method of PCI function extension control for a PCI bus system comprising a first PCI bus, a PCI function extension control circuit to be connected to the first PCI bus, a second PCI bus possessed by the PCI function extension control circuit, a bus switch to be connected between the first PCI bus and the second PCI bus (including a means for disconnecting or connecting the first PCI bus and the second PCI bus), and a PCI device agent to be connected to the second PCI bus, comprising the steps of: monitoring if the transaction of the first PCI bus and the second PCI bus is an access to a desired configuration area or not; and when the result of said monitoring step concerns the access to the desired configuration area, controlling the bus switch, and to deliver a desired PCI control signal to the first PCI bus, and the second PCI bus.
It is also characterized by that it comprises the steps of: monitoring if the transaction of the first PCI bus and the second PCI bus is an access to a desired configuration area in the PCI agent device or not; and when the result of the monitoring step concerns the access to the desired extension configuration area, controlling the bus switch, and delivering an extending desired PCI control signal to the first PCI bus, and the second PCI bus.
Moreover, it is characterized by that it comprises the steps of: monitoring if the transaction of the first PCI bus and the second PCI bus is an access to a desired configuration area in the PCI agent device or not; when the result of the monitoring step concerns the access to the desired extension configuration area, controlling the bus switch, and to deliver an extending desired PCI control signal to the first PCI bus, and the second PCI bus; and when the result of the monitoring step concerns the access to the desired extension configuration area, delivering a control signal to an extension circuit to be connected to the PCI agent device.
Additionally, a method of PCI function extension control for a PCI bus system, comprising the steps of: making a PCI function extension control circuit monitor if the transaction of the first PCI bus is an access to a desired configuration area or not; when the result of the monitoring step concerns the access to the desired configuration area, disconnecting a signal from the first PCI bus to the PCI agent device to deliver a desired PCI control signal to the PCI agent device via the second PCI bus; making the PCI function extension control circuit monitor if the transaction of the second PCI bus is an access to a desired configuration area or not; and when the result of the monitoring step concerns the access to the desired configuration area, disconnecting a signal from the PCI agent device to the first PCI bus to deliver a desired PCI control signal to the PCI agent device.
These steps allow to extend the PCI function based on the information of the extended PCI configuration area.